package data.analysis.grammar.symbol;

public enum NativeType implements Type {
	VOID("void", "void"),
	BOOLEAN("bool", "boolean"),
	INT("int", "int"),
	DOUBLE("float", "double");
	//OBJECT("object", "Object");
	
	private final String name, alias;
	private final TypeSymbol symbol;
	
	NativeType(String name, String alias) {
		this.name = name;
		this.alias = alias;
		this.symbol = new TypeSymbol(getName(), this);
	}

	@Override
	public String getName() {
		return name;
	}
	
	@Override
	public String getAlias() {
		return alias;
	}

	@Override
	public Symbol getTypeSymbol() {
		return symbol;
	}
}